The present invention relates to an information processing apparatus such as a controller and a pattern recognition apparatus for determining output data from input data, and more particularly to an information processing apparatus and an apparatus for monitoring a control system using the information processing apparatus which stores plural sets of input/output data and determines outputs based on the sets to facilitate designing as well as realize high speed processing and advanced functions such as learning.
In conventional control apparatuses, methods of determining outputs from inputs may be roughly classified into:
(1) A method which uses mathematical models (prior art 1). PA1 (2) A method which uses so-called knowledge processing techniques such as fuzzy reasoning and neural networks (prior art 2). PA1 (3) A method which uses lookup tables (prior art 3). PA1 (4) A method which uses characteristic values of objects to design a recognition algorithm for each object (prior art 4); and PA1 (5) A method which uses a learning function such as neural networks (prior art 5).
An example of engine control is described, for example, in a literature entitled "Improvement in Shift Timing by Fuzzy Logic" by Atsushi Hirako et al, in Automobile Technique, Vol. 46, No. 5, pp. 100-104.
Many prior art examples are also known in regard to pattern recognition apparatuses which may be roughly classified into the following two kinds:
A prior art technique closest to the present invention may be that described in JP-A-2-56602, entitled "Fuzzy Reasoning Apparatus" (prior art 6). This is a technique similar to the prior art 3 which performs controls using lookup tables.
The concept of this known example will be explained below. When an input/output relation is to be represented using fuzzy reasoning in applications to control, recognition and so on, if dedicated hardware is used in order to speed up operations such as calculations of membership function values and composition of fuzzy rules, which are executed every time the reasoning is performed, the circuit scale of the hardware will be extremely extended when the number of input data items and the number of fuzzy rules are increased. To solve this problem, this known example has all possible input/output relations previously stored in a memory, since if a value of input data is determined, the value of output data is uniformly determined also in fuzzy reasoning. For example, when there are two input data items which are each represented by an 8-bit integer value, the values of the input data are regarded as an address having 16 bits, and output values derived by the fuzzy reasoning corresponding to respective input values given as addresses are stored in a memory having a capacity of 65,536 (=2.sup.16) words. In this manner, all operations required for the fuzzy reasoning can be executed by replacing the operations with the addressing of memory.
When the number of input data items is further increased, the known example describes employment of a method which utilizes an auxiliary storage unit to store the additional input/output relations for increased input data items by using, so to speak, a virtual storing method; and a method which connects the above-stated configuration in multiple layers, for example, if the number of input data items is four, this method connects configurations of two-inputs/one-output in two stages.
In any case, the configuration of this known example is equivalent to a system which implements the method using lookup tables with hardware, from a view-point that an input data value is converted to an address to derive an output which has previously been stored in that address in a memory.